Audio-visual navigation and communication dynamic memory architectures

ABSTRACT

According to one embodiment, a plurality of spatial publishing objects (SPOs) is provided in a multidimensional space in a user interface. Each of the plurality of spatial publishing objects is associated with digital media data from at least one digital media source. The user interface has a field for the digital media data. A user is provided via the user interface with a user presence that is optionally capable of being represented in the user interface relative to the plurality of spatial publishing objects. The digital media data associated with the at least one spatial publishing object are combined to generate a media output corresponding to the combined digital media data.

CROSS REFERENCE TO RELATED APPLICATIONS

The present application is a continuation application of and claimspriority to pending U.S. patent application Ser. No. 15/200,877, titled“Audio-Visual Navigation and Communication Dynamic Memory Architectures,filed Jul. 1, 2016, which is a continuation of and claims priority topending U.S. patent application Ser. No. 13/607,410, titled“Audio-Visual Navigation and Communication Dynamic MemoryArchitectures,” filed Sep. 7, 2012, which is a continuation of andclaims priority to U.S. patent application Ser. No. 12/861,698, titled“Audio-Visual Navigation and Communication Dynamic MemoryArchitectures,” filed Aug. 23, 2010, which is a continuation of andclaims priority to U.S. patent application Ser. No. 12/239,333, titled“Audio-Visual Navigation and Communication Dynamic MemoryArchitectures,” filed Sep. 26, 2008, which claims the priority benefitof U.S. Provisional Patent Application No. 60/995,353, titled “Systemand Method for Graphical Interface and Computer Program Product forAudio-Visually Representing and Tuning Communication/Publishing NodesMulti-Dimensionally,” filed Sep. 26, 2007, all of which are herebyincorporated by reference in their entirety.

BACKGROUND 1. Field of the Invention

Embodiments of the invention relate to technology for communicatinginformation via a user platform.

2. Description of Related Art

Various systems and methods exist to communicate audio and visualinformation, including broadcast radio and television, satellite radioand television, cable television, telephone, cellular telephone,facsimile, voice over interne protocol (VoIP), personal video recorders(PVR), personal computers (PC), game consoles, personal digitalassistants (PDA), and software applications operable over networks suchas the Internet. The various systems differ both in the transmissiontypes and methodologies employed to communicate information, and in thedevices and interfaces designed to receive and interact with theinformation. Based on the technology behind the distribution systems,these various means of communicating information also differ in scope,or size of audience.

The entire production process of media creation and content developmenthas moved into the digital domain over the last twenty years, fromrecording to editing to finishing. The price of this technologycontinues to drop, lowering the barriers to entry and allowing the toolsfor the creation of content to fall into more and more hands. Thisdigitization of the production process is more or less complete,constituting a replacement of analog tools with digital ones, andcreating a vast new group of publishers.

The digitization of publishing, distribution and delivery, is still in astate of flux, with the final outcome more likely to be a new contextfor communicating information. Reasons for this are at least threefold:the ease of creation of digital content and its correspondingpervasiveness; the simplicity of distributing that content to aworldwide audience; and the ability to inexpensively communicate withothers around the globe. Termed user-generated content, this enormousnew stream of multimedia is coming online to compete and coexist withthe output from terrestrial broadcasters, satellite and cable providers,radio stations, and other traditional publishers, the currentcontrollers of distribution. Most of this new traffic is centered on theInternet, using standard web browser software, enhanced with plug-insfor 2-D animation/video.

Many of the world's media publishing and communications networks nowterminate at the end user with an inexpensive computer. Inexpensivetools exist to create content. Users can subscribe and connect to aworldwide web through these existing networks, publishing and viewingpublished media, and communicating with each other, but not in anintegrated fashion.

Current methods for displaying information on a computer display involveicon- or hyperlink-based point-and-click operations enacted uponwindowed or paged 2D screens. Selecting an object involves hovering overthe item to be selected, which can sometimes bring up a small textualinformational overlay, or more recently 2D animation effects such assize scaling of the item to be selected, and then explicitly clicking toselect. Drop-down menus invoke lists for further decision-making.

Media playback can occur through the use of a variety of media playersfrom many industry participants, usually functioning via a playlist-type interface. Most can play audio and video files, one at a time,with the need to go back to the desktop or browser environment to picknew material, unless a play list has been loaded. Playback ofsimultaneous files is not generally supported in consumer mediaapplications, nor are overlapping audio fields, though sometimesmultiple instances of the same application can be opened to runsimultaneously. Many Voice-Over-IP (VOIP) applications exist but targetcommunication only, with chat, and sometimes accompanied with filesharing. Webcam video input is possible from some providers. Screendisplay layout is designed for close-up viewing, especially on smallhandheld devices such as smart phones and PDAs. The majority ofapplications employ text which can not be read from 10 feet away. Themajority of applications do not employ handheld remote controls.Videogames represent the most advanced use of 3D computer display,processor power, and input devices. Virtual environments exist both asgames and as more social destinations. User interaction is usuallycomplex, although recently casual gaming has become popular. Gamingstill remains the primary activity of these types of programs, versusthe more routine activities of everyday life, but advanced gamingconsoles are starting to offer movie and music downloads.

SUMMARY OF THE INVENTION

The technology includes buffering, on a user platform, data associatedwith a spatial publishing object data store at a buffer distanceproximate a user presence in a spatial publishing object space. Thebuffer distance comprises a measure based at least in part on at leastone of: capacity of a communications path between the spatial publishingobject data store and the user platform; availability of memory at theuser platform; movement of the user presence through the spatialpublishing object space; traffic in the communications path; processingresources available; amount of spatial publishing objects within adistance of the user presence; amount of spatial publishing objects inthe spatial publishing object space; type of spatial publishing objects;proximity of a spatial publishing object to the user presence; and rateof the user presence movement in the spatial publishing object space.The movement of the user presence in the spatial publishing object spacebuffers data such that data for a proximate spatial publishing object inthe space is available in the buffer for presenting to the user when theuser's presence is a predetermined distance from the proximate spatialpublishing object.

The technology further includes buffering, on a user platform, dataassociated with a spatial publishing object data store at a bufferdistance proximate a user presence in a communication space. The bufferdistance is based at least in part on: a capacity of a communicationspath between the spatial publishing object data store and the userplatform; availability of memory; traffic in the communications path;processing resources available; amount of spatial publishing objectswithin a distance of the user presence; amount of spatial publishingobjects in the space; type of spatial publishing objects; and proximityof a spatial publishing object to the user presence. Such bufferingfurther includes establishing an order for a plurality of spatialpublishing objects, arranging the spatial publishing objects about alocation based on the order; and buffering spatial publishing objectdata associated with the arranged plurality of spatial publishingobjects within a predetermined distance from the user presence.

The technology further includes a method for buffering data in a systemfor allowing movement of a user presence through a computer-implementedspatial publishing object space. Spatial publishing objects retrievedfrom a data store are buffered in a user platform for display bybuffering data associated with each spatial publishing object in aspatial publishing object space that is within a buffer distance of auser presence in the space. The buffer distance comprises a measureselected from the group consisting of: capacity of a communications pathbetween the data store and the user platform; availability of memory atthe user platform; movement of the user presence through the spatialpublishing object space; traffic in the communications path; processingresources available; amount of spatial publishing objects within adistance of the user presence; amount of spatial publishing objects inthe space; type of spatial publishing objects; proximity of the spatialpublishing objects to the user presence; internet bandwidth; and rate ofmovement of the user presence in the spatial publishing object space.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the technology are illustrated by way of example and notlimited in the following figures.

FIG. 1 illustrates a 3D spatial publishing object space of the presenttechnology.

FIG. 2 illustrates a spatial publishing object database record of thepresent technology.

FIG. 3 illustrates a network context of embodiments of the presenttechnology.

FIG. 4 illustrates a network context of embodiments of the presenttechnology.

FIG. 5 illustrates a method of operation of embodiments of the presenttechnology.

FIG. 6 illustrates control and display modes of embodiments of thepresent technology.

FIG. 7 illustrates spatial publishing object arrangements within aspatial publishing object space of embodiments of the presenttechnology.

FIG. 8 illustrates audio characteristics of embodiments of spatialpublishing objects within the technology of the present invention.

FIG. 9 illustrates audio characteristics of embodiments of spatialpublishing objects within the technology of the present invention.

FIG. 10 illustrates control and display modes of embodiments of thepresent technology.

FIG. 11 illustrates an object boundary lattice of the presenttechnology.

FIG. 12 illustrates a spatial publishing object space dynamic memoryarray page method of embodiments of the present technology.

FIG. 13 illustrates a communication space dynamic memory array pagemethod of embodiments of the present invention.

FIG. 14 illustrates a volume display shift in the context of an objectboundary lattice of embodiments of the present technology.

FIG. 15 illustrates a control panel of embodiments of the presenttechnology.

DETAILED DESCRIPTION OF THE INVENTION

Detailed embodiments of the present invention are disclosed herein.However, it is to be understood that the disclosed embodiments aremerely exemplary of the invention that may be embodied in various andalternative forms. The figures are not necessarily to scale, and somefeatures may be exaggerated or minimized to show details of particularcomponents. Therefore, specific structural and functional detailsdisclosed herein are not to be interpreted as limiting, but merely as abasis for the claims and as a representative basis for teaching oneskilled in the art to variously employ the present invention. Further,individual characteristics of the technology can be omitted from anygiven embodiment or combined in various ways to produce patentableembodiments of the technology.

The technology supports communication of information through a userplatform. “Communication” as used to describe the technology includesboth one-way (e.g., display, presentation, performance) and two-way(e.g., dialog, chat, interactive participation) interface. Informationincludes both content (e.g., human viewable/hearable content andcomputer readable data) and metadata (e.g., spatial publishing objectcontrol/status data), and can take the form of e.g., text, graphics,photo, audio, binary files, and video. User platforms include thosedevices capable of outputting at least one of the forms of information.Such platforms include personal computers, cellular telephones, andpersonal digital assistants.

A spatial publishing object is a basic unit of the technology. It is,for example, representative of any content such as the voice of a singleuser, a conversation stream between users, the programmed output of amultimedia broadcast network, a user's presence on the World Wide Web,or the collection of books of a corporate publisher, along with themetadata associated with the content. In addition to information,spatial publishing objects are associated with functionality such asthat of a telephone, a television, streaming audio player, blog,website, chat room, and sound studio. In the Provisional Application,spatial publishing objects were variously referred to as SpatialPublishing ObjecTs, SPOTs, and spots. A spatial publishing object caninclude one or more other spatial publishing objects. Spatial publishingobjects are instances of a broader class of information objects.

Spatial publishing object information and functionality can be madeavailable external to the spatial publishing object, in a fashionsimilar to how data and methods are made “public” in object orientedprogramming. Information and functionality can be made availableinternal to the spatial publishing object, in a fashion similar to howdata and methods are made “private” in object orientedprogramming—though in preferred embodiments of the technology, muchfunctionality is implemented in a browser-like application and notwithin the spatial publishing object itself. Additionally in someembodiments of the technology, spatial publishing objects, information,and functionality are be subject to access control as known to thoseskilled in the art, e.g., password protection, authentication,verification, encryption.

Referring to FIG. 2, spatial publishing objects can be represented asrecords 200 in a spatial publishing object database containing bothmetadata, e.g., 202 and content or links/pointers thereto, e.g., 204 a,204 b, 204 c. A spatial publishing object can be represented in thestructured framework of a record 200 within a database with theappropriate fields, e.g., 206, designed to allow queries to be performedacross the entire range of spatial publishing objects to return resultsof targeted relevance to a user. Spatial publishing object metadata caninclude information about the publisher of the spatial publishingobject, including but not limited to, name and address 207, person orentity 208, title, geo-spatial location 210, gender, educational level,employment history 212, hobbies and interests, theme, and spatialpublishing object status or state information 214. Spatial publishingobjects records can include other spatial publishing objects or linksthereto, e.g., 218.

Referring to FIG. 4, spatial publishing object databases can be bothlocal 420 and remote, native or from a server 410, or collected throughpermission-enabled and tagged access from and through a distributednetwork such as the Internet 411, and including other types of mediaforms and locations. For example, in some embodiments, content local toa user platform 422, such as purchased music or videos, can also beincluded as part of the user's SPO space for easy access within thecontext of public spatial publishing objects, but will not benecessarily available to other users. In some embodiments, this servesas a means of caching, e.g., where a remote spatial publishing objectdatabase points to a remote copy of a song, a local copy of that songcan be used instead of the remote copy to avoid the latency of bufferingor streaming the song from the remote location. Information is created424 and/or selected 428 in either local or remote database sources by auser 430, including live video and audio information. The information isthen retrieved and filtered by an audio/image/information mixer andswitcher 432 under user control to create the final output for theaudiovisual display software 434 made up of an audio library and 3Dgraphics engine for representation on a display 434 of a user platform.

Referring to FIG. 1, Spatial Publishing Objects (SPOs), e.g., 110 arerepresented on a user platform display as entities in athree-dimensional SPO space 120. Entities can be displayed as 2D (e.g.,“billboards” that always appear to face the user's POV), preferably as3D, entities in the SPO space. The SPO space can have an arbitraryorigin, with SPO positions in the SPO space indicated by coordinates [X,Y, Z] 130; though other coordinate systems, e.g., spherical, can beused. The SPO space is populated, at least in part, by SPOs that comefrom a SPO database as responsive to a query. The query that determineswhich spatial publishing objects are returned can be as simple as “SPOsin <SPO space name>,” or as complicated as a long Boolean construct orStructured Query Language (SQL) statement(s). Queries can eitherexplicitly be entered by the user or determined based on data inherentin the current state of the user presence or the spatial publishingobject selected. The SPO space is further populated by the userpresence, and can be populated by spatial publishing object(s) of otheruser(s) even though those spatial publishing objects are not necessarilyresponsive to the query that populated the SPO space, e.g., another userhaving presence in the SPO space, an advertising object in the SPOspace. User presences and user SPOs, like SPOs responsive to the querythat populates the SPO space, can be displayed as 2D, preferably 3D,entities in the SPO space.

Referring to FIG. 7, SPOs, e.g., 702 can be positioned in the SPO space,e.g.: at discrete positions (e.g., X, Y, and Z are integers), e.g., theintersections of a regular three-dimensional matrix 710, regular pointson a spiral 730, or other geometric pattern; continuously, as shown inthe example user positioning 720, and the example geographic locationpositioning 740; or a combination of discrete and continuous. Given thatSPOs are preferably 3D entities having volume, positioning is influencedby the size of SPOs and is subject to thresholds set in software or by auser (including by a publisher of the entire SPO space).

In some embodiments, the SPO space comprises simple 3D SPO spherespositioned on the integer value coordinate points [X, Y, Z]. New SPOscan be added to abut the existing SPOs, so that the origin is wrapped bynew spatial publishing objects a single layer wide, starting from thebottom on up one L-shaped row at a time, until a new plane is added ontop, roughly preserving a cubic origin spatial publishing object matrix.This spatial grouping serves as the origin SPO space or starting point.Spatial publishing objects in a 3-dimensional matrix can be positionedin such a fashion, in combination with other spatial publishing objects,as to create larger 3-dimensional shapes in SPO spaces other than theorigin SPO space. Outside of the initial user experience within the SPOspace, display modes can consist of spatial publishing objectarrangements conforming to user manipulation, configuration, andpreference, or SPO spaces created as saved arrangements in the softwareto allow specific SPO space configurations such as the depiction ofspatial publishing objects based on their global positioning data tocreate a 3-dimensional global shape within the SPO space. Configurationinformation in the form of user preferences can be saved by the softwareso that the program can either start with the origin SPO space or with aSPO space selected by the user, such as the last SPO space accessed.Customized user SPO spaces can be saved under a name for instant recall.Users can select from these saved arrangements within the browser/filemanagement-like program.

SPOs can be ordered in the SPO Space in a variety of ways including:distance from a reference (e.g., an origin) indicating relevance to thequery that returned spatial publishing objects for the SPO space; withreference to a background, as shown in the example three-dimensionalbackground of the earth using a geographic location 740 associated withthe SPO; as characteristics mapped to axes, e.g., time/order to the Xaxis, category (e.g., sports, finance, arts, music genre) to the Y axis,alphabet to the Z axis; as arbitrary positioning, e.g., as by a user720; and in appropriate combinations of fashions. As with SPOpositioning, SPO ordering can be subject to parameter bounds set in thesoftware or by users, e.g., songs ordered by frequency of play, mostrecently accessed spatial publishing objects, friends' SPOs ordered byfrequency of connect operations (described herein).

Certain characteristics of the SPO space (e.g., how spatial publishingobjects are ordered in the SPO space) can be governed by implicit userchoices (e.g., query terms such as “music” that called forth the spatialpublishing objects for the SPO space can govern how the spatialpublishing objects are arranged in the SPO space; for example “music”can cause spatial publishing objects to be arranged by music categorysuch as “rock,” “rap,” etc.), and explicit user choices (e.g., whereinformation of certain types is displayed on the display; example,current spatial publishing object metadata may appear in a bubble overthe spatial publishing object or appear in a panel on the side of thedisplay that is outside the image of the SPO space).

In some embodiments, the initial display mode is user-selectable in thatthe spatial publishing objects appear according to user preference. Forexample, upon starting software of the technology, a user can have onhis display screen several commonly accessed spatial publishing objects,favorites, such as his family members and friends, and then, afterexecuting a query for “deep sea fishing,” a new crop of spatialpublishing objects next to that with people and publishers related tothat topic to traverse.

Operations in the SPO space are normally focused around the userpresence. One of the most basic operations in the technology isnavigation of the user presence through the SPO space. When the userpresence is coincident with the user point of view (POV), which is thedefault condition, navigation and point of view are from the userpresence. In other operations, described herein, the user POV can beseparated from the user presence. Preferred embodiments enablenavigation in at least a 2D subspace of the SPO space, and preferably inall three dimensions of the SPO space. Further, the user presence anduser POV can be coincident with a user's spatial publishing object.While a user has access to some functionality without a user spatialpublishing object, e.g., navigate user presence and select spatialpublishing objects, the user will not access the more interactivefunctions.

A user can navigate through a SPO space in any direction, e.g.,referring to FIG. 10, 1014. Options for navigating a user presencethrough a SPO space include autopilot, e.g., automatic routing based onparameters (optionally user supplied) and random routing (similar to“shuffle” used in conventional technology). For example, autopilotnavigation can use the input of a standard Global Positioning Systemtracking data file, and can be used in conjunction with a geographicbackground SPO space.

As another example, a passive viewing or listening experience can beprovided. A user can enter random passage mode during which traversal ofthe SPO space, or across SPO spaces, is automated. The user presencemoves from object to object with random changes of direction to providean experience like the seek function on a radio or the shuffle functionon a digital audio device. Time spent on specific spatial publishingobjects can be segment- or play list item-based, in other words, when anew spatial publishing object is reached, segment skip is executed toskip ahead on the spatial publishing object to the next full play listitem to guarantee a complete song or video playback before moving on tothe next spatial publishing object. Spatial publishing objectspublishing non-segmented material such as a voice conversation can playfor a user configurable time duration before the user presence moves tothe next spatial publishing object. Note that movement of the userpresence can be continuous or discontinuous (e.g., jump). The user canstop the random passage, or skip ahead to the next random spatialpublishing object, at any time.

A user's POV can be separated from the user's SPO, enabling the user tomove beyond a first person vantage point, e.g., to a third personvisualization of the user's own spatial publishing object in contextwith other spatial publishing objects on the display in static ordynamic views. A global visualization allows viewing of dynamic userspatial publishing object movement based upon real-time changes in auser's SPO location data, which changes can mirror actual movementaround the real world or be input via other controlling mechanisms.

A user's POV can be separated from the user presence, allowing the userto visualize spatial publishing object spaces from a POV outside oftheir own, such as in the case which occurs when another spatialpublishing object within the user's connection group is elected to leadmotion through the SPO space (described herein).

Spatial publishing objects can be selected explicitly through naming, orcan be selected implicitly through proximity. Selection reveals a subsetof the information that is external to a spatial publishing object. Forexample, selection of broadcast news SPO reveals a stock ticker (text),with video and audio of a news anchor reading the current top stories.

Operations initiated by proximity include others beyond select such asplay audio (both exterior and interior); and connect, which can occurimplicitly if a user presence stays in the proximity of a spatialpublishing object for longer than a selectable time threshold. Referringto FIG. 8 as an example of proximity operations, in some embodiments, aSPO 810 is surrounded by a spherical audio field 820. The volume of aSPO's audio as heard by a user having a user presence in proximity withthe SPO diminishes as a function of distance of the user presence fromthe spatial publishing object. In an illustrative case, a spatialpublishing object's volume is inaudible beyond a radius 830 of thespherical audio field whose diameter equals the distance across theSPO's compartment in a spatial publishing object boundary lattice(described herein with respect to FIGS. 11-14). In this case, eachspatial publishing object broadcasts audio that is hearable when theuser presence is in proximity to that spatial publishing object, fadingout and then potentially switching to a new spatial publishing object'saudio that fades in as the user presence approaches the new spatialpublishing object. Audio fades can follow a variety of profiles, e.g.,logarithmic, linear, abrupt, discontinuous, and stepwise, and areuser-configurable.

In some embodiments, a spatial publishing object's audio field radiusand fade profile are settable, e.g., by a user. Referring to FIG. 9,certain settings can create quiet zones 910 between spatial publishingobject audio fields. Some settings can create overlapping audio fields.For example, by doubling the audio field radius of all the spatialpublishing objects in a SPO space containing many audio publishers of aconversational nature, a situation not unlike walking through a crowdedroom is created for the user as the SPO space is traversed. In anotherexample, the audio radius of a select group of spatial publishingobjects publishing independent instrumental or other musical parts isincreased so that all are contained in each other's audio fields inorder to create a mixed output. This is the typical audio setting of acommunication space arranged to connect several friends. To this end, insome embodiments, the technology's browser/file management program (inpreferred embodiments running on the user platform) includes a mixerpanel to assist the user in controlling audio outputs from spatialpublishing objects, including multiple channel output upon execution ofa connect command. Although a spatial publishing object's audio isconsidered monolithic in terms of its initial audio field and volumecharacteristics, all standard home entertainment center formats areavailable for output, including but not limited to mono, stereo, and 5.1surround, as well as for the overall system output of the programitself.

In some embodiments, particularly those with spatial publishing objectsordered in the SPO space on a regular 3D matrix, proximity operationssuch as select spatial publishing object are based on an Object BoundaryLattice, Referring to FIG. 11, a spatial publishing object boundarylattice (OBL) 1100 is shown. For SPO spaces with spatial publishingobjects 1110 ordered in a regular 3D matrix, the OBL is a geometriccubic matrix, made up of individual cubes 1120 bounding each spatialpublishing object 1110, at specific 3-dimensional coordinate vectorpoints, or vertices 1130, which determine proximity selection for thecurrent spatial publishing object if the user presence is containedwithin the bounding cubic area of that spatial publishing object asmapped out by the 3-dimensional geometry of the OBL, establishing theconcept of the currently-selected spatial publishing object as thesupplier of media and information to the video display and audio outputsystems, along with any additional remote spatial publishing objectswhich can be providing media and information based on a connect with thecurrent spatial publishing object. In some embodiments, audio fields aredescribed by the OBL as opposed to a spherical audio field as describedherein.

A user can connect with audio and video channels of a spatial publishingobject. Connect provides a link for both content and control/statusinformation that can persist when the user presence leaves the proximityof a connected spatial publishing object or otherwise de-selects aspatial publishing object. One or more users can connect with thepresence of a master or lead user, thereby causing the users connectedto the master/lead to view the SPO space from the presence/POV of themaster/lead (as opposed to from a POV coincident with that user'spresence), including viewing and hearing those spatial publishingobjects viewed and heard by the master spatial publishing object. Byconnecting to lead, the lead's movement, actions, and spatial publishingobject selection queries are broadcast to the group so that all membersof the connect are visually seeing the same spatial publishing objectson their individual display screens.

Each individual media stream, be it audio or video, can be thought of asa self-contained object inside a wrapper of metadata. This metadata cancontain information about the rights holders of the media, as well asother information about the media such as location, crew, creation date,modification history, and technical information about the specific mediaitself. As media is accessed or created in real time from live audioand/or video input for any given spatial publishing object, informationis requested from the spatial publishing object by the softwareapplication, and the associated metadata stream is logged and saved in adatabase for later reference based on the time of day broadcastoccurred.

In some embodiments, a configurable permission structure and underlyingmetadata-based tracking and scheduling platform for media published on aspatial publishing object, including conditional access authenticationprocedures such as password protection, allows publishers to controlaccess to their published media using copy protection and digital rightsmanagement, and can accurately determine usage of published media forthe purposes of using subscription, pay-per-view or pay-per-download, oradvertiser-supported methods of revenue generation.

Day indexing can be calculated as an offset from the inception date ofthe spatial publishing object publisher database. While the metadataassociated with media streams is continually being stored on remoteapplication database servers, the actual streaming media itself is onlystored if it was recorded or downloaded by the user in the past to thelocal client system, and is otherwise preferably stored by reference.Appropriately permissioned and available content can be re-accessed forplayback after the fact, depending on each publisher. After selecting aspatial publishing object, content is retrieved by entering calendarmode, similar in appearance to a two-dimensional display mode, in whichdays and months and specific published events can be selected throughcursor movement in order to go back to a spatial publishing object viewof a past day. It is also possible to look into the future, but only toview metadata, like a program guide, of future spatial publishing objectpublishing, if a publisher provides that information.

“External” when used with regard to a spatial publishing object includescommunication on the surface of the spatial publishing object or in aseparate portion of the user interface (described herein), e.g., displayof metadata, and video, and communication in the spatial publishingobject's proximity field, e.g., playing audio. The external appearanceof a spatial publishing object can indicate its state, where statesinclude: on, off, and private. States can be indicated by the exteriorcolor of the spatial publishing object. Spatial publishing object sizecan be used to indicate attributes such as the number of users that havee.g., selected or connected to the spatial publishing object over aperiod of time. Referring to FIG. 1, a spatial publishing object canexternally display video, photos, or text in a screen-like inset calledthe spatial publishing object window 140.

Although one appearance of a spatial publishing object is that of asimple sphere fixed in SPO space, spatial publishing objects can move(e.g., SPOs associated with other users who are navigating the same SPOspace) and also take on other forms, e.g., anthropomorphic or otherwise,possibly including lip-sync and other animation forms, that arefacilitated by an open programming interface, as well as a library ofalternate spatial publishing object models. This open model for spatialpublishing object visualization allows the complexity of spatialpublishing object models to scale to improvements in computer networkbandwidth, CPU performance, and 3D graphics rendering speeds over time.

A user can externalize a spatial publishing object's internalorganization within the spatial publishing object space through the openspatial publishing object command. Open spatial publishing objectcreates a view of a new SPO space based on the query data inherent inthe currently selected spatial publishing object, allowing the user todrill down within a spatial publishing object to possibly find otherspatial publishing objects in another SPO space. For example, opening amusic SPO leads to albums, leads to songs; or opening a hobbies SPOleads into the hobbies space which includes a team SPO that when openedleads to a teams space having a basketball SPO, that when opened leadsto a basketball SPO space including a SPO for the user's favorite team.In some embodiments, a keyword within the data inherent within thespatial publishing object can be empowered with the ability to triggerspecialized software controls, interactions, and display formatting tobetter represent specific publishing topics such as music, user groups,sports, news, advertising, financial markets, and entertainment. Aspatial publishing object's internal organization can include individualcommunication channels and other spatial publishing objects.

With professionally published content, such as films and music concerts,it is envisioned that groups of connected spatial publishing objectscould grow to be quite large. Referring to FIG. 14, the number ofconnects to a spatial publishing object, designated as a master (seebelow) of the connect group, can be indicated by the size of this masterspatial publishing object 1410 in the spatial publishing object space,and can be related to the number of unit-sized spatial publishingobjects 1420 displaced. In some embodiments, a first size threshold iseight spatial publishing objects as shown in FIG. 14. When the number ofspatial publishing objects 1420 reaches eight, a larger spatialpublishing object 1410 appears, filling the SPO space previouslyoccupied by eight unit-sized spatial publishing objects. In someembodiments, size thresholds follow the cubes of the positive integers,starting with 2³ or 8, followed by 3³, or 27, 4³, or 64, etc.

The master spatial publishing object of a connected group of SPOs in aSPO space can be by default the first object to initiate a connection toa second SPO. However, if and when another connected SPO within theconnect group has more direct connections to it, it could automaticallybecome the new master SPO of the connection group. In small groups withmore one-to-one type connections versus many-to-one, the master orleader of the group can be chosen thru consensus by the members of theconnected group of SPOs in the spatial publishing object space tomanually change the default master SPO status.

In reference to a spatial publishing object, “internal” includes acommunication space, variously referred to in the ProvisionalApplication as a “CommUnication SPace” or “CUSP.” A communication spaceis entered when a user directs an enter communication space commandthrough the user interface (variations to be described in greater detailherein), e.g., after creating an explicit communication connectionbetween the user's SPO and this currently selected spatial publishingobject in the SPO space by executing the connect spatial publishingobject command. In some embodiments, entering a communication spacecauses the communication space to be displayed outside the context ofthe SPO space, e.g., a communication space can be three-dimensional ortwo-dimensional in the fashion of a conventional Web page.

As an example, in particular embodiments, audio visual feeds from thecurrently selected spatial publishing object, and any spatial publishingobjects connected with this spatial publishing object are mapped onto atleast one interior portion of the entered communication space. Referringto FIG. 6 and FIG. 10, these can all be simultaneously presented, takefor example a quad split, e.g., 1010 or a revolving display around thespatial publishing objects internal surface 630, or sequential innature, such as tracking the image of the current speaker, e.g., 640 ina multi-party conversation or discussion. With the addition oflower-third title graphics overlay based on spatial publishing objectinformation, a means for creating a dynamic form of talking headtelevision or talk radio style programming is enabled. Communicationspaces are customizable with additional items, e.g., furniture 620 and1020, through content uploads on the application portal website, newsoftware creation, or with purchases from the portal online store oftextures, pictures, videos, music or other audio, and 3-dimensionalitems such as furniture and characters to create a custom communicationspace, user configurable based on an open software applicationprogramming interface (API). In some embodiments of the technology, theSPO space is discernable from within the communication space, e.g., asan outer space via a transparent or translucent spatial publishingobject boundaries, or portion of such boundary as via, for example, awindow or other portal.

After a user chooses to enter a communication space, the interior3-dimensional space of the spatial publishing object in question becomesvisible, i.e., the enter communication space command reveals theinternal structure of the SPO entered. The user, in effect, travelsinside the spatial publishing object, and can navigate within thecommunication space, e.g. 1080. Users outside the communication spaceyet in a SPO space including this spatial publishing object can watchthe conversation on the spatial publishing object window withoutnecessarily connecting if the spatial publishing object publisherallows. Users can also watch the conversation through the interiorcommand disclosed herein.

A user enters the communication space of their own spatial publishingobject to simultaneously or sequentially view the gathered visualmaterial from connected spatial publishing objects out in SPO space in aconvenient and custom-designed 3D environment of their own creationwhile also communicating with live voice channels. A defaultconfiguration exists, e.g., the interior of a sphere with a singletelevision-like display area on the wall. Audio from connected spatialpublishing objects is also present, as it was out in the SPO space.Users can also review their own media channels within theircommunication space. Users can be connected by default to their ownspatial publishing object. The communication space represents auser-controlled and customizable space for communicating with anddisplaying visual information from their spatial publishing objectconnections.

Spatial publishing objects need not take visible, spatial form within acommunication space. The communication space of a spatial publishingobject can be a customizable 3D room, rooms, or environment arranged bythe publisher of the object. Connected spatial publishing objects candisplay instead as live video streams in television-like monitors on thewall of the space for the purposes of video conferencing, or only bepresent audibly, via the live media channel of each spatial publishingobject, depending on the decisions of the publisher of the spatialpublishing object's communication space. The use of audio-only forspatial publishing object representation can be particularly relevant inthe case of communication spaces containing a large number of connectedspatial publishing objects where system performance becomes an issue. Inthese cases there might be no visible spatial representation of thespatial publishing objects, but a system for determining the underlyingunique communication space position and ordering is in place in the formof the communication space DMAP.

In particular applications, inside a user's own communication space,voice or other messages left by other users who've attempted a connectto the user's spatial publishing object can be listened to. In someembodiments the messages are automatically placed in a play list on adesignated channel of the user's spatial publishing object. Unansweredconnect voice communications are recorded to the user's SPO mediachannel, to be listened to later, even if a spatial publishing object isin a “not publishing” state, or a “frozen” state.

Although communication spaces in some embodiments appear as the interiorspace of a spatial publishing object sphere, communication spaces can beimplemented as a distinct enter to a separate software executable whileincorporating dynamic data exchange to carry the spatial publishingobject publishing streams currently connected in the original spatialpublishing object along into the new environment. The new environmentneed not be limited to the simple interior sphere shape. An openprogramming interface specification allows third-party development ofcustom SPO communication spaces. In fact, the communication spacespatial publishing object data encapsulation can become adopted as anindustry standard protocol for passing communication publishing datagroupings, spatial publishing objects, along from one application toanother such as from the user browser/file management program to athird-party videogame, not just communication spaces specific to theuser browser/file management program. In this manner, groups of userscan remain in audio communication with each other as they move betweendifferent applications environments linked on a network.

One aspect in the design specification of the open programming interfacefor communication spaces, and in the establishment of industry standardsfor group voice and data passing between software applications at thecommunication space interface, is the notion of future applicationextensibility and recursion. Built in to the present technology is thecapability of future-proofing and renewal. A connect rate for a spatialpublishing object and its communication space can grow to include allspatial publishing objects existing in the original interface to thepoint that the original interface can eventually remain unused as allnew publishing and communications take place inside this communicationspace. What remains consistent between the original interface and thecommunication space in question is the concept of spatial publishingobjects and communication spaces, so that the new communication spacecontains spatial publishing objects and communication spaces andincludes this possibility of in turn being eclipsed by a new spatialpublishing object/communication space technology combination. This cyclecan continue.

The information communicated by a spatial publishing object can be inthe form of a pre-ordered sequence of different media types, such asaudio or video, or a combination of different types. The spatialpublishing object publisher can decide to make this sequence or playlist static or dynamic. If static, the sequence can play out without anyuser or user control. If dynamic, fast forward, reverse, pause, frameadvance, segment skip ahead and back, and other common transport-typefeatures are provided. Referring to FIG. 15, multiple channels for playlists are supported within a spatial publishing object, between which auser can switch 1516. In some embodiments, two channels that come as adefault on each spatial publishing object are, referring to FIG. 2, theincoming voice message channel 204 b and the live user voice and videochannel 204 d for communicating with other spatial publishing objects.Standard hypertext transfer protocol (http) links to web pages are alsosupported on spatial publishing objects. When selected, the applicationlaunches the client computer system's browser program for web browsingin parallel with the client application.

Professionally-published content can also be available in spatialpublishing objects, as well as commercial information. However, in someembodiments, the occurrence of commercial spatial publishing objects canbe limited, e.g., in density, e.g., as defined by ad spatial publishingobject count per volume.

FIG. 5 is a flowchart illustrating an embodiment of a program controllogic scheme for the present invention. After detecting 502 and thendisplay 504 detected databases to interact with at program start, a usercan navigate to select the information source(s) 506, each representedas a spatial publishing object. Subcategories contained in the spatialpublishing object are then displayed 508, also in spatial publishingobject form, to guide the user in the direction of interest. Thesesubcategory spatial publishing objects can be navigated to 510 andselected, or an immediate keyword query can be entered 512 to display amore specific set of spatial publishing objects. The search could returnmore subcategory spatial publishing objects 514 based on the informationin the spatial publishing object selected or keyword entered, or it canreturn media-rich spatial publishing objects 516. If spatial publishingobjects exist which contain media channels to satisfy the user selectionor query, additional functionality can be employed such as creatingcommunication connections 518 and controlling audiovisual display 520.The user can also save lists of favorite objects 522, connect to orenter spatial publishing objects 524, and adjust access controls 526.This cycle can continue indefinitely as the user enters additionalkeyword queries and navigates to select other spatial publishing objects528 or subcategories displayed 530 in spatial publishing object form,before exiting the program 532.

Visual information from the spatial publishing object can either be onthe surface of the spatial publishing object, e.g., as described above,or directed to a designated area of the display screen, and can shiftwith each change in user presence within the SPO space to reflect thecommunication of the current spatial publishing object, as the userpresence moves through the SPO space, which can be a live video input ofthe spatial publishing object publisher such as from a webcam, any filmor video footage, or other information.

In order to navigate the spatial publishing object view display screen,users are presented with several options and different display modes. Aswith most modern software programs, keyboard and pointing devicecontrols are enabled, in addition to infrared or other types of remotecontrol. FIG. 6 and FIG. 10 illustrate various display modes of thetechnology. FIG. 15 displays a control panel of the technology,implementable as software on a display or as a physical remote controldevice.

In a first display mode, the control panel mode 610, the onscreencontrol panel 612 appears on the right side of the display screen,leaving the left side open for display of the spatial publishing objectmatrix 614, and is designed to mirror the functionality of the optionalhandheld remote control shown in FIG. 15. The initial onscreen controlpanel can be paged 1514, 1515 to bring up other control panels, e.g.,1517 for setting user preferences and account settings, audio control1518, 1016, such as mixing and processing, video control 1060, 1521,such as Picture-in-Picture and Splits setup, and other managementfeatures. Commands can be executed either by clicking the correspondingbutton on the display with the pointing device, or by using keyboard orhandheld remote equivalents. In addition to a display mode, the user canchoose between the information type options. An AUDIO VISUAL informationoption or button 1510 sends video published from the current spatialpublishing object to the control panel object window 650, 1503 in theonscreen control panel. The INFORMATIONAL button 1520 draws informationfrom a spatial publishing object's information data, such as the name ofthe publisher and the title of the media on display, to the same controlpanel object window area. The INTERIOR button 1530 allows a user stillin the SPO space to look inside a spatial publishing object, if allowedby the publisher, to see the communication space inside. Each of thesethree information display buttons selects a current information displaystate, to be changed by choosing one of the other two buttons.

In a second display mode 611, the onscreen control panel can be hiddenexcept for the playback transport controls to obtain maximum visibilityof the spatial publishing object matrix. In this case the keyboard orremote control can be employed to execute most user commands. The AUDIOVISUAL information button 1510 in this display mode positions videodisplay in an actual window on the spatial publishing object, thespatial publishing object window 660. The INFORMATIONAL button 1520triggers a popup menu 661 to appear near the spatial publishing object,semi-transparent, with the information data of the current spatialpublishing object. The INTERIOR information state button 1530 has thesame effect as in display mode one, namely creating a transparency 640within the surface of the spatial publishing object sphere through whicha user can see the into the SPO's communication space.

A third display mode 613, 1040, full screen mode, occurs when a userdecides to expand the currently selected object window, either thecurrent spatial publishing object window or the control panel objectwindow, to cover the entire display screen. In all screens the playbacktransport controls are available, which include the display mode togglebetween the first three modes, but the controls fade off in full screenmode if not being used, to reappear by touching any control or movingthe current position. The AUDIO VISUAL information button 1510 hereprovides a full screen video playback 670 or can provide a larger screenarea for working with audio and video setup controls from the controlpanel object window, while the INTERIOR button 1530 is inactive. Spatialpublishing objects can be switched between in full screen video mode byemploying the skip-to-previous transport commands. The channel buttons1516 can switch between available channels within a spatial publishingobject. The INFORMATIONAL button 1520 provides a full screen display ofthe information data associated with the spatial publishing object 671,but can additionally go active in a full screen web browser if apublisher provides a web address (URL) in the appropriate field in thespatial publishing object database.

A fourth display mode 672 communication space can be accessed through adedicated control or through a programmable, e.g., soft, button 1540.The fourth display mode occurs when a user chooses to enter acommunication space, e.g., by pressing the communication space button1540. The display can vary greatly depending on the custom communicationspace configuration of each spatial publishing object.

The onscreen commands include cursor movement control along withspecific action command soft keys 1540, alphanumeric keypad 1550, andaudio volume 1560, transport 1570, and display mode control 1580. Thetwo, four, six, and eight keypad 1550 buttons can function as forward,left, right, and back cursor movement controls to enable the traversalof spatial publishing object views, unless an alternate command mode isentered such as FIND, e.g., enabled by a soft key 1540. The FIND commandenables the keypad for alphanumeric entry of a search query to create aSPO space filled with spatial publishing objects satisfying that searchcriteria. This SPO space title is entered and displayed in the spatialpublishing object view template window. Alternately, the drop-downmaster list of SPO spaces 1590 can be activated at the right side of thewindow to enable the selection of a pre-existing SPO space. After a FINDhas been executed to create a new SPO space, this new SPO space can besaved into the master list with the SAVE button 1592 beside the SPOspace window 1590. Transport commends can include play/pause, forward,reverse, skip to next, skip to previous, and stop. Within thecommunication space, a user can terminate an active connect to anotherspatial publishing object's live media channel by selecting that objectand issuing a stop command.

Pressing or otherwise selecting ENTER opens a new SPO space based on thequery data inherent in the currently selected spatial publishing object,allowing the user to drill down within a spatial publishing object topossibly find other spatial publishing objects, such as MUSIC leads toALBUMS leads to SONGS, or HOBBIES leads to TEAMS leads to BASKETBALLleads to spatial publishing objects of other team members.

Individual spatial publishing objects can also be saved near the originof a particular SPO space for easy access by using the Favorite commandwhile on a particular favorite spatial publishing object. The origin canbe reached by pressing the 0 key 1593 on the keyboard or remote control,or selecting it on the onscreen controller. When the 0 key is pressed,the display can rotate around to the spatial publishing object currentlyin the [0, 0, 0] matrix position. Favorites can be saved along theleft-most plane of spatial publishing objects, in coordinate terms[0,Y,Z], by executing the FAVORITE command, e.g., enabled by a soft key1540, and can be set to be on or off in program configurationpreferences.

The FACE mode 1050 command, or soft key 1540, executes a simplificationof the current SPO space, essentially dropping the interface view downto two dimensions to facilitate simple left, right, up, and down cursormovement through spatial publishing objects. Conventional 2D featuressuch as drag-and-drop are available in this mode. This mode isparticularly appropriate for smaller, mobile user platforms that lacksophisticated positional input devices for traversing the 3D SPO space.It is also useful for viewing the FAVORITE plane of spatial publishingobjects which is 2-dimensional since it lies on the far left of thespatial publishing object view matrix. Conventional 2D features areavailable in embodiments of the present technology.

A feature of the social interactivity of spatial publishing object viewis the connect command, enabled by a soft key 1540. When the connectcommand is activated, the audio component of the current spatialpublishing object is linked to the spatial publishing object user'saudio to enable conversation. Further traversal of the current SPO spaceor other SPO spaces can continue, allowing a shared experience whilemoving through other spatial publishing objects. A spatial publishingobject must be open to connection, or to entry of its communicationspace, e.g., indicated by a specific color, such as green, in order toconnect or enter. A closed condition can be indicated by a spatialpublishing object taking a different specific color, such as blue, andcan be executed by using the Freeze command, e.g., via a soft key 1540.In the FREEZE state, users and other spatial publishing objects areunable connect to a frozen spatial publishing object. A spatialpublishing object can be frozen after other users or spatial publishingobjects have connected in order to create a private or contained group.The FREEZE state does not indicate that publishing of audio or videostops from the frozen spatial publishing object. That is another statethat can be indicated by a third SPO coloration such as gray. It simplymeans that no other users or spatial publishing objects can connect.

In some embodiments, a user must connect to a spatial publishing objectbefore the enter communication space command can be used. By executingthe enter communication space command, connected users pass through theopen interface specification into the custom, or default, inside of thecurrent spatial publishing object. The communication space interior maybe the default interior sphere shape or something completely usergenerated by the current spatial publishing object publisher.

Inside a user's own communication space, voice messages left by otherspatial publishing objects who've attempted a connect to the user'sspatial publishing object can be listened to, since the messages areautomatically placed in a play list on a designated channel of theuser's spatial publishing object. Unanswered connect voicecommunications are transferred to the client's storage, to be listenedto later, even if a spatial publishing object is in a not publishing,e.g., gray, or a frozen, e.g., blue state.

The present technology may be implemented using hardware, software or acombination thereof and may be implemented in a computer system or otherprocessing system. Referring to embodiments illustrated in FIG. 3 andFIG. 4, a client 420-server 410 topology, or any other suitabletopology, may be employed. Client computers 318 can be personalcomputers 319, mobile telephones 320, game consoles 322, PersonalDigital Assistants 324, or other digital devices 326. These devices cancontain a processor, random access memory, graphics display hardware,and either a display screen 434, 321 or output connections for anexternal monitor. For non-volatile storage, e.g., 426, these devices maycontain hard disk drives, Flash memory, or some other form ofhigh-density random access storage.

The user platform tuner/browser application can be written predominantlyin an object-oriented programming language like C++, or other suitableprogramming language to enable the real-time features of audio mixing,3D graphics, and video playback, though portions of the user interfacecould also be coded in modern languages like Python or Ruby. SQL-type,or other suitable database software can provide the serverfunctionality, and could be accessed, for example but without limitationthrough calls from scripts running in a standard web browser.

Referring to the embodiments of FIG. 3, the client environment 310 alsocan contain microphone audio input hardware 311, and audio speakers 312.Video input 313 capability is supported but optional. In addition, eachdevice could include keyboard/keypad input 314 and cursor controlthrough a positional input device of some type such as a mouse 315,trackball, joystick 316, keypad, or handheld remote control 317 any ofwhich can communicate with the computer using infrared, wireless8.0211a/b/g/n, WiMax, USB, Bluetooth, serial, Firewire 1834, or anothercommunication standard.

For expandable computer systems such as a personal computer, devicessuch as CD or DVD burners may also be employed to record, copy, orbackup published media if digital rights are obtained. Published worksexisting on removable media such as CDs, DVDs, Flash Drives, and gamecartridges may also be read by the browser-like client software if theappropriate hardware is present.

The client computer could connect to the network through acommunications interface such as an Ethernet network interface card,modem, WiMax or wireless 8.0211 a/b/g/n interface signal utilizing arouter 370 allowing connection to a cable, telephone,satellite/telephone combination, or cellular Internet Protocol networkthrough RJ-11 or RJ-45 twisted copper pair wire, coaxial cable, opticalfiber, or RF signal.

A network included but not limited to the Internet or the worldwide webof interconnected server computers communicating via TCP/IP could beemployed to route communication and signals back to the applicationdatabase host servers 340, employing caching edge servers 330 along theway to minimize transmission delay. A protocol such as SessionInitiation Protocol (SIP) can be used to enablevoice-over-internet-protocol (VOIP) communications.

Redundant server computers can contain a processor and random accessmemory, and can be connected to the network via a network interfacecard. In addition, the servers can be connected to RAID or other harddisk storage.

The client-side application can reside on the local client computer'snon-volatile memory until executed by the user, at which time it couldload into system RAM until terminated by the user. The server-sideapplication can be located on the network RAID or other storageconnected to the application servers. After initial execution, theclustered and load-balanced servers could run the server-sideapplication on a continuous basis to provide 24/7 access to the globaluser community for registration, media server, online store, anddatabase search functionality.

Data for each spatial publishing object in a SPO space can resideinitially in the spatial publishing object database. In a client-serverconfiguration, this is at the server or some other location remote tothe user. For example, in the case of live audio or video content, whatcan reside on the server database may be the address to the live stream,rather than the stream itself. Live media streams can be input bypublishers and linked over the Internet to their spatial publishingobjects within a SPO space via the appropriate addressing link in thespatial publishing object's database record.

Software at the user platform can employ a Dynamic Memory Array Pages(DMAP) architecture, loading into the user platform random access memory(RAM) data for spatial publishing objects within a range of the currentuser presence of the current SPO space, e.g., using backgroundprocessing. In some embodiments, the number of spatial publishingobjects having information buffered in local RAM is not absolute, butinstead is calculated based on a set percentage of the available systemRAM so that systems with larger amounts of RAM can buffer moreinformation on spatial publishing objects of the current SPO space. Thetechnology includes various approaches for selecting which spatialpublishing objects near the user presence can have data cached on theuser platform, including spherical fields and the Object BoundaryLattice described herein.

In some embodiments, the browser-like client application software iswritten in a multithreaded manner to make use of multi-core CPUs inorder to more efficiently execute DMAP buffer filling as a backgroundprocess.

In some embodiments, where spatial publishing objects are ordered in theSPO space in a regular 3D matrix, starting with the spatial publishingobjects nearest the user presence, and radiating outward, e.g.,uniformly in all directions, e.g., to create a cube, spatial publishingobject data is fetched from the spatial publishing object database (orin the case where the database links to the data, via the spatialpublishing object database) over the communications network, e.g., theInternet, into the local application's DMAP allocated in client systemRAM up until the limit of the previously calculated memory allotment isreached.

For a regular 3D matrix, in some embodiments, the layers of the DMAPcube (or other suitable structure) are completed on all sides forindexing purposes, so to buffer one layer surrounding the currentspatial publishing object would require adequate memory for twenty-sevenspatial publishing objects. Buffering out three layers would requireadequate memory for the information of 343 spatial publishing objects,the formula being (2N+1)³, where N equals the number of layerssurrounding the current spatial publishing object position on each side.

In addition to each spatial publishing object's information, publishedaudiovisual material for each spatial publishing object may also bebuffered in the DMAP, e.g., in the form of a texture bitmap or dynamicbuffer for real-time media. Each spatial publishing object view containsmultiple spatial publishing objects modeled in 3-dimensions, inembodiments of the present technology, for perspective display on a flatdisplay screen surface.

Publishers can decide between various formats for the visual output oftheir spatial publishing object: video, html page, photo, and others. Inorder for the spatial publishing object visualizations to be drawn onthe spatial publishing objects in the spatial publishing object window,in most cases they are first converted from their native format into abitmap for application as a texture map to the spatial publishing objectby the graphics engine. A modular input stage capable of interpretinginput formats can precede the entry of a spatial publishing object'stexture map into the DMAP. As the user traverses the spatial publishingobject view, each individual spatial publishing object visualizationchanges appearance in response to the shift in viewing angle. Thetechnology's 3-dimensional graphics engine handles the interpretation ofuser motion input into the corresponding screen redraw using eachspatial publishing object's texture map to reflect the new viewingangle. The DMAP also uses the current POV information to dynamicallyadjust the position of all spatial publishing object windows to beviewable from the new angle.

Referring to FIG. 12, in some embodiments, e.g., some SPO spaces withspatial publishing objects positioned in a regular 3D matrix, DMAPrefresh is triggered based on user presence 1210, 1210′ in comparison tothe spatial publishing object Object Boundary Lattice (OBL) 1220. Everytime motion takes the user presence across an OBL boundary, the DMAPcube (indicated by the filled-in dots 1230) readjusts its indexing toreflect the new user presence position 1210′ and begins buffering of theappropriate new spatial publishing object data without having to reloadany buffered spatial publishing object data already in the DMAP. In someembodiments, only the spatial publishing objects in the DMAP revealtheir visual components in their spatial publishing object windows onthe display screen.

Several variables may affect the speed and efficiency with which theDMAP can be filled with spatial publishing object data, creating theopportunity for a unique feedback mechanism to be built into the DMAP.Internet bandwidth, daily network traffic patterns, connection times,client processor speed, number of threads and cores available, amount ofRAM, rate of traverse, and amount and type of visual information perspatial publishing object in any given direction within the spatialpublishing object view all have bearing on the load times for the DMAP.Since an objective is for users to move seamlessly through any SPOspace, this feedback mechanism works by slowing down the speed withwhich the user can move through the SPO space in the direction of any asyet to be buffered spatial publishing object data. This aspect of theDMAP has the desirable effect of making faster client systems with moreRAM and better internet connection bandwidth more responsive, whilestill providing a seamless experience for lesser systems.

Another feature of the DMAP is the method in which real-time data suchas video or audio are buffered. Since these are real-time streams, onceconnection is initiated by the associated spatial publishing objectbeing encompassed by the DMAP cube, circular buffers for the media dataare employed and kept full, with current position pointer kept track ofto allow an accurate presentation of audio or video data should thespatial publishing objects in question fall within audible or visualrange during user traverse of the SPO space.

A communication space DMAP exists apart from the DMAP underlying thespatial publishing object space. This communication space DMAP is filledby the connections, e.g., those a user creates to his spatial publishingobject while traversing various spatial publishing object spaces thatare persistent across these spaces in preferred embodiments. Each audioconnection can be user-controlled by bringing up the appropriate controlpanel window.

In communication spaces, audio presentation can be much more diversesince communication spaces are subject to an open specification, but inthe default internal spatial publishing object sphere, a variation ofthe SPO space DMAP can be used. Real-time audio voice streams mix andcan be equal in volume, with movement of a user presence optional, butsince there need be no specific positional orientation for a userpresence in the communication space, the default communication spaceaudio array structure used to populate the communication space is aDMAP, a DMAP specifically for the communication space and independent ofthe SPO space DMAP. The spatial position of a connected spatialpublishing object is pre-selected based on the order that users connectto the communication space.

Referring to FIG. 13, this DMAP builds out from the communicationspace's spatial publishing object publisher, or master spatialpublishing object 1310 in a wrapping fashion, first next to, then above,then below the master as exemplified by a user 1320 connecting to thisSPO and assuming its position in the communication space array 1330. Inthe case of the communication space DMAP 1340 of the user SPO 1320,connected SPOs would instead build around this user SPO since it is themaster in its own communication space. More memory and bandwidth canallow the user to have a larger DMAP to interact with more spatialpublishing objects simultaneously in the communication space. The masterspatial publishing object in the default audio setting can be heard byall users in the communication space, whereas users can be limitedinitially to hearing the master spatial publishing object audio and onlythe audio from the users surrounding their spatial publishing objectaccording to the allocation of the communication space DMAP of themaster spatial publishing object and the size of the DMAP of the clientsystem in use.

A useful analogy is to think of the concert setting, where theperformance on stage (master spatial publishing object) is loud enoughfor the entire audience to hear, but an audience member can otherwiseonly hear the other audience members in the immediately vicinity. Ofcourse, since user audio parameters are variable, only the defaultsetting is being referred to here.

The present technology offers utility in a wide variety of applications.In some embodiments advertising objects and advertising on existingspatial publishing objects is enabled. In some embodiments, thatadvertising is limited to a certain density per region. However, thisrestriction is relaxed for spatial publishing objects that achieve highselect, connect, or enter thresholds, meaning spatial publishing objectsthat have many viewers connected to them. Advertisers are allowed topre-bid payments on an exchange hosted by the site for certain levels ofviewers per minute and total viewer's selected, connected, or entered,related to specific publishing categories and viewer demographics, sothat winning bids result in advertising taking place, in someembodiments automatically, on spatial publishing objects surroundinglarge spatial publishing objects which are growing due to a high select,connect, or enter rate. This creates a gauntlet of ad spatial publishingobjects surrounding the popular spatial publishing object in questionthat users pass through on their way in to connect or simply view thelarge event. Ad placement can also take place within the spatialpublishing object's communication space through insertion within audioor video, or as signs and banners on surfaces of a 3-dimensionalinterior of the communication space or on the exterior of the spatialpublishing object. Revenue sharing arrangements can be a part of anyspatial publishing object account.

In some embodiments, metadata stored from the published spatialpublishing object includes information about the viewers and visitors tothe spatial publishing object, e.g., viewers per minute (VPM), and totalviewership (TV). Rates charged to advertisers can be based on actualnumber of users selecting, connecting to, or entering a SPO space orcommunication space.

One of the advantages of the technology is simplified access toindividuals anywhere on the globe. However, language barriers can stillexist. In order to lower these barriers and further simplify globalcommunication, a special preference can be awarded to interpreters,e.g., by reserving the column front-most and left-most in the spatialpublishing object view, in coordinate terms [0,Y,0], for individuals orgroups who can speak multiple languages to aid in translation betweenspatial publishing objects. A special language selection-based searchquery can be directed specifically at these spatial publishing objectsto allow a user to connect with the appropriate interpreter spatialpublishing object before traversing a SPO space arranged with publishersspeaking or broadcasting in a language which the interpreter is able totranslate for the user. Favorite interpreters can remain for quickrepeat access in the favorites area.

Users encountering explicitly connected spatial publishing objectsduring navigation, to which they themselves are not connected, might seea similar video broadcasting from each of the connected spatialpublishing object's live input media channels, subject to privacysettings, should they happen to come across more than one of theexplicitly connected spatial publishing objects in the same SPO space.This video could contain live video switching between the connectedspatial publishing object's live media channel inputs, such as followingthe current speaker in a conversation. If the explicitly connectedspatial publishing objects are not in the FREEZE state, the user couldattempt an explicit connect, or could implicitly connect by remaining inproximity with the spatial publishing object. If any one of theexplicitly connected spatial publishing objects (with appropriateprivileges, e.g., appropriate access control of functionality) choosesto freeze connect access, all the spatial publishing objects in questionenter the FREEZE state. Additionally, should the privacy status flags ofany of the explicitly connected spatial publishing objects live inputmedia channels be set for privacy, no live video or audio would bebroadcast from any of the spatial publishing object's windows, but thelive communication could still take place privately within theexplicitly connected spatial publishing object's communication spacesand be displayed therein. This mechanism provides an option for privatecommunication or public discussion between spatial publishing objects,either inside the spatial publishing object in a communication space oron the external spatial publishing object window. Each spatialpublishing object within the explicit connect can display the similarlive communication stream, subject to any display options chosen by theindividual spatial publishing objects.

The explicitly-connected spatial publishing objects can choose to watcheach other's live input during the course of the communication, or canindividually move away from which ever one of the connected spatialpublishing objects they were in proximity to in order to execute theexplicit connect, and traverse the SPO space. Visual informationdisplaying from a connected spatial publishing object stays behind as auser moves away from the object. An exception to this is the live mediachannel signal. After connection, and subject to privacy settings, anylive video channel connections might display in an interleaved fashion,switching to follow the current speaker, on each of the live mediachannels on the connected spatial publishing objects, but still may onlybe seen if a user is in the proximity of at least one of the connectedobjects. Because of the connected state, each member of the connectedcould continue to hear the other connected members, but would need tomove back into proximity of one of the explicitly-connected spatialpublishing objects to see the communication on the live input mediachannel of that spatial publishing object. Therefore, each user in theconnection group could be looking at very different SPO spaces whilestill conversing with the members of the connect group. In oneembodiment of the onscreen control panel, each member of the connectedgroup can be represented by an audio fader to allow control of theindividual audio levels of each member of the connect group in eachuser's listening environment. Also included on a fader in the mix can beany new spatial publishing object audio playing back as the userstraverse the SPO space.

New forms of video entertainment can be realized using the technology,particularly surrounding live cameras. By publishing a live video camerafeed, in conjunction with the ability to converse, a user could connectto a live video channel of a spatial publishing object and direct thecamera person in regards to the footage being viewed through the camera.The technology enables a whole group of spatial publishing objects todevelop, camera jockey, or CJ, spatial publishing objects, which canallow users to connect to a CJ spatial publishing object publishing froma remote location, such as a vacation spatial publishing object, or apotential real estate purchase, in order to take a walk through with theuser in command. By making interpreters easy to find in a SPO space,language need not be a barrier to using a CJ spatial publishing object,or to conversing with a spatial publishing object from any location inthe world. Virtual tourism can be enabled by the technology in thisfashion.

SPO spaces can be created in which users can be invited to participate.By entering, user spatial publishing objects can fill-in 3-dimensionaltemplates to create 3-dimensional shapes within the SPO space. Oneexample of this is the global template, in which each spatial publishingobject is positioned by its GPS location to create the shape of the realworld.

In another application of the technology, users can publish forbroadcast on a channel on their spatial publishing object a stream oftheir own live audio voice and video image input, and based on a userinterface software function, link or connect their spatial publishingobject to other spatial publishing objects they move toward forselection in the spatial publishing object matrix for the purposes oflive communication.

A SPO space can be used to conveniently display the publishing of stockmarket performers such as major indices or individual stocks so thatusers can monitor their financial portfolios. Meaningful color-coding ofspatial publishing objects can be linked to real-time financial datainput to create intuitive visualizations of the financial market for usein investment scenarios.

Simultaneous game feeds on different spatial publishing objects canallow easy switching between contests as well as simultaneous viewing ofmultiple angles and multiple contests.

The audio capabilities included with the technology make the spatialpublishing object interface ideal for music publishing, for listening tomusic, and for playing music. Users can move among songs playing fromspatial publishing objects or skip ahead to hear other songs on the samespatial publishing object, or automate the playback of music with therandom passage feature. Video can be published with the songs for amusic video experience. A command can sort published music intocategories, so spatial publishing objects can be songs by an individualartist or band. Individuals can perform on their instruments from aspatial publishing object, and be connected to other players to create aduo, or a trio, or a whole band, with audio mix capabilities availableon the mixer panel, so an audio engineer can also connect. Or two userscould just hold a conversation and audition new or favorite pieces ofmusic.

Musical performances can be published on a spatial publishing object,and as various connect thresholds are passed for a sought afterperformance, the spatial publishing object can grow to become morevisible to other users, who in turn can move towards the large spatialpublishing object and connect. Advertising spatial publishing objectscan spring up around the successful spatial publishing object based onpre-arranged, viewer threshold-based agreements. Throughout, users inconnect groups can hold conversations amongst each other, and whenentering a communication space of the performance, can be situated inthe communication space DMAP together so that conversation can continuewhile the music of the performance from the communication space masterspatial publishing object is also audible, as well as video of themusicians projected on the walls of the communication space, similar toan actual concert experience. Since communication spaces arecustomizable, this performance communication space could also havecamera angle switching so that users could view multiples camera anglesof the band.

Initial user/publisher registration and configuration of a spatialpublishing object can involve distributed network form-based publisherinput and password selection using software on a client through a portalwebsite running on a remote web server associated with the applicationsoftware, establishing a publisher account requiring passwordauthentication, to define the searchable, viewable, and listenableattributes of the spatial publishing object, along with any time-stampedmedia play lists, uniform resource locators, and a channel count, andwhich process creates a publisher database record to be stored in themaster spatial publishing object database on remote database servers,with the addressable location of any and all content to be published onthe spatial publishing object, which can be located on remote contentservers specifically available to the application should the publisherso decide and execute a content upload or on the publisher's or thirdparty media servers, to be then accessible to clients through the localclient application software. Publishing points, or spatial publishingobjects, could be created online through a simple form-based databaseentry transaction in which user data is collected and linked to a newspatial publishing object entry of the form [X, Y, Z]. Updates tospatial publishing object account data can be possible at any time, tobe reflected in any currently active SPO spaces drawing on the specificSPO data changed.

While various embodiments of the present invention have been describedabove, it should be understood that they have been presented by way ofexample, and not limitation. It can be apparent to persons skilled inthe relevant art that various changes in detail can be made thereinwithout departing from the spirit and scope of the invention. Thus thepresent invention should not be limited by any of the above describedexemplary embodiments, but should be defined only in accordance with thefollowing claims and their equivalents.

I claim:
 1. A computer-implemented method of communicating comprisingthe steps of: providing, by a three-dimensional user interfaceapplication executing on a client computing device and in communicationwith an application server software module stored on a remote servercomputing system and associated with at least one spatial publishingobject database, a three-dimensional user interface comprising aplurality of three-dimensional spatial publishing objects retrieved inresponse to a query to the remote server computing system for a spatialpublishing object property common to the plurality of three-dimensionalspatial publishing objects, wherein each of the plurality ofthree-dimensional spatial publishing objects comprise geo-spatial data;animating, based on input from the client computing device, anappearance and a position of a first spatial publishing object withinthe three-dimensional user interface; and updating the remote server toprovide the appearance and the position of the first spatial publishingobject to a second client device displaying the first spatial publishingobject.
 2. The computer-implemented method of claim 1, wherein theplurality of spatial publishing objects are each surrounded by an audiofield having a radius such that audio volume emanating from each of theplurality of spatial publishing objects increases as proximity withinthe three-dimensional user interface towards each spatial publishingobject increases, and wherein animating comprises lip-sync animation. 3.The computer-implemented method of claim 1, further comprising animatingan appearance and a position of other spatial publishing objects fromthe plurality of three-dimensional spatial publishing objects based oninput from other client computing devices or other controllingmechanisms.
 4. The computer-implemented method of claim 1, whereinspatial publishing object display modes comprise spatial publishingobject arrangements conforming to a user preference or a savedarrangement.
 5. The computer-implemented method of claim 1, whereinassociated with the first spatial publishing object is a communicationspace having an open programming interface specification allowingcustomization of the communication space across different applicationenvironments linked on a network.
 6. The computer-implemented method ofclaim 1, wherein the three-dimensional user interface comprises acommunication space, the communication space comprising an environmentreflecting activity of an associated spatial publishing object withinit, the activity being transmission of a live video stream or audiostream.
 7. The computer-implemented method of claim 1, wherein voicemessages associated with the first spatial publishing object can beplayed via a communication space of the first spatial publishing object.8. The computer-implemented method of claim 1, wherein visualinformation from the first spatial publishing object can be displayed ona surface of the first spatial publishing object, or can be displayed ina designated area of a display screen, in which case the visualinformation changes with a change in a position of a user presencewithin the three-dimensional user interface to reflect the visualinformation output from a spatial publishing object of the plurality ofthree-dimensional spatial publishing objects that is currently theclosest in proximity to the position of the user presence.
 9. Thecomputer-implemented method of claim 1, wherein a control panel objectwindow provides control of a combined media output of a communicationspace available in the first spatial publishing object that is viewablefrom the plurality of spatial publishing objects.
 10. Thecomputer-implemented method of claim 1, wherein a communication spaceassociated with the first spatial publishing object is customizable withadditional items through content uploads, new software creation, or withpurchases from an online store.
 11. A non-transitory computer-readablemedium comprising instructions executable by one or more processors ,the instructions comprising the steps of: providing, by athree-dimensional user interface application executing on a clientcomputing device and in communication with an application serversoftware module stored on a remote server computing system andassociated with at least one spatial publishing object database, athree-dimensional user interface comprising a plurality ofthree-dimensional spatial publishing objects retrieved in response to aquery to the remote server computing system for a spatial publishingobject property common to the plurality of three-dimensional spatialpublishing objects, wherein each of the plurality of three-dimensionalspatial publishing objects comprise geo-spatial data; animating, basedon input from the client computing device, an appearance and a positionof a first spatial publishing object within the three-dimensional userinterface; and updating the remote server to provide the appearance andthe position of the first spatial publishing object to a second clientdevice displaying the first spatial publishing object.
 12. Thenon-transitory computer-readable medium of claim 11, wherein theplurality of spatial publishing objects are each surrounded by an audiofield having a radius such that audio volume emanating from each of theplurality of spatial publishing objects increases as proximity withinthe three-dimensional user interface towards each spatial publishingobject increases, and wherein animating comprises lip-sync animation.13. The non-transitory computer-readable medium of claim 11, furthercomprising the step of animating an appearance and a position of otherspatial publishing objects from the plurality of three-dimensionalspatial publishing objects based on input from other client computingdevices or other controlling mechanisms.
 14. The non-transitorycomputer-readable medium of claim 11, wherein spatial publishing objectdisplay modes comprise spatial publishing object arrangements conformingto a user preference or a saved arrangement.
 15. The non-transitorycomputer-readable medium of claim 11, wherein associated with the firstspatial publishing object is a communication space having an openprogramming interface specification allowing customization of thecommunication space across different application environments linked ona network.
 16. The non-transitory computer-readable medium of claim 11,wherein the three-dimensional user interface comprises a communicationspace, the communication space comprising an environment reflectingactivity of an associated spatial publishing object within it, theactivity being transmission of a live video stream or audio stream. 17.The non-transitory computer-readable medium of claim 11, wherein voicemessages associated with the first spatial publishing object can beplayed via a communication space of the first spatial publishing object.18. The non-transitory computer-readable medium of claim 11, whereinvisual information from the first spatial publishing object can bedisplayed on a surface of the first spatial publishing object, or can bedisplayed in a designated area of a display screen, in which case thevisual information changes with a change in a position of a userpresence within the three-dimensional user interface to reflect thevisual information output from a spatial publishing object of theplurality of three-dimensional spatial publishing objects that iscurrently the closest in proximity to the position of the user presence.19. The non-transitory computer-readable medium of claim 11, wherein acontrol panel object window provides control of a combined media outputof a communication space available in the first spatial publishingobject that is viewable from the plurality of spatial publishingobjects.
 20. The non-transitory computer-readable medium of claim 11,wherein a communication space associated with the first spatialpublishing object is customizable with additional items through contentuploads, new software creation, or with purchases from an online store.